In recent years, a very high data transfer rate is required to transfer data between semiconductor devices, for example, between a CPU and a main memory. In order to achieve this, the amplitude of input and output signals is made smaller each year. When the amplitude of the input and output signals is made smaller, the required precision of the impedance of the output buffer becomes considerably severe. The impedance of the output buffer varies based on process conditions at the manufacturing time. In addition, the impedance is also affected by a change in the ambient temperature and a variation in power supply voltage during the actual usage of the semiconductor device.
Therefore, when a high precision is required for the impedance, an output buffer having the impedance adjusting function is employed (see Japanese Patent Application Laid-open Nos. 2002-152032 and 2004-32070). The adjustment of the impedance of the output buffer is usually carried out using a circuit called a calibration circuit.
On the other hand, when plural chips are connected in parallel on an external bus like a DRAM (Dynamic Random Access Memory), a signal is reflected in some times by a chip of which output buffer is in a high-impedance state (Hi-Z). When the reflection of a signal occurs, the quality of the signal on the external bus is lowered. Therefore, in a semiconductor device in which a high data transfer rate is required like a DDR2 type SDRAM (Synchronous Dynamic Random Access Memory), an ODT (On Die Termination) function for making the output circuit function as a terminal resistor is provided (see Japanese Patent Application Laid-open No. 2003-133943).
When the semiconductor device has the ODT function, a terminal resistor is not necessary on the mother board. Therefore, the number of parts can be decreased, and the reflection of a signal can be prevented effectively. Consequently, the quality of the signal on the external bus can be increased.
However, usually, during the ODT operation, impedance which is different from that during the data output time is required. Therefore, when the output circuit has the ODT function, two calibration circuits for the impedance adjustment are necessary, that is, a calibration circuit that is used to adjust the impedance at the data output time, and a calibration circuit that is used to adjust the impedance at the ODT operation time. This has a problem in that the circuit scale becomes large.
During the calibration operation, the adjustment of the impedance at the data output time and the adjustment of impedance at the ODT operation time need to be carried out separately. Therefore, there is a problem in that it takes time for the calibration. This problem is not so serious when the calibration is carried out at only the power supply on time or the reset time. However, when the calibration is carried out periodically during the actual use time, this problem becomes serious.